perm filename TIPUG.BBN[UP,DOC]2 blob sn#306854 filedate 1977-09-19 generic text, type T, neo UTF8




Report No. 2183                           Bolt Beranek and Newman Inc.

NIC No. 10916
















              USER'S GUIDE TO THE TERMINAL IMP


                     July 1977 Revision






















Sponsored by:

Defense Communications Agency
Contract No. DCA200-C-616

Report No. 2183       Bolt Beranek and Newman Inc.              Page   2
July 1977 Revision


UPDATE HISTORY

Originally written Dec. 1971 by W.R. Crowther
Updated July 1972 by D.C. Walden
Completely revised Sept. 1972 by D.C. Walden
Updated Oct. 1972 by D.C. Walden
Updated Jan. 1973 by D.C. Walden
Completely revised June 1973 by D.C. Walden
Updated Nov. 1973 by J. Malman
Updated June 1974 by J. Malman
Updated Dec. 1974 by J. Malman
Completely revised August 1975 by J. Malman
Updated March 1976 by J. Malman
Updated July 1977 by J. Malman

Report No. 2183       Bolt Beranek and Newman Inc.              Page   3
July 1977 Revision


                     TABLE OF CONTENTS


1.   INTRODUCTION

2.   THE NETWORK VIRTUAL TERMINAL

3.   THE TIP COMMAND FORMAT

4.   TYPICAL USE OF THE TIP

     A.   Hardware Stage
     B.   Establishing Parameters
     C.   Connection to Remote Sites
     D.   Use of Remote Sites
     E.   Connection Loss and Restoration
     F.   TIP News and User Feedback

5.   UNUSUAL USES OF THE TIP

     A.   Device Parameters
     B.   Talking to Another TIP
     C.   Binary Mode
     D.   Setting Another Terminal's Parameters
     E.   The DIVERT OUTPUT Command
     F.   Editing
     G.   Wild
     H.   Low Level Protocol Commands
     I.   Commands from the Network
     J.   The RESET Device Command
     K.   TIP Configuration and Device Pre-initialization

6.   MAPPING THE VARIOUS DEVICES INTO THE NETWORK
     VIRTUAL TERMINAL

     A.   TTY and TTY-like Devices
     B.   2741 and 2741-like Devices
     C.   ASCII/2741 Conversion Table

7.   TIP MESSAGES TO THE TERMINAL USER

8.   THE TIP MAGNETIC TAPE OPTION

9.   CONNECTION OF TERMINALS TO THE TIP

     APPENDICES

     A.   Host Addresses
     B.   Command Summary
     C.   Bibliography
     D.   Terminals Used with the TIP
     E.   New Telnet Protocol Implementation
     F.   Commands available under New Telnet

Report No. 2183       Bolt Beranek and Newman Inc.              Page   4
July 1977 Revision


1.    INTRODUCTION

     This report describes the  use  of  a  terminal  connected  to  a
Terminal  IMP  (TIP) in the ARPA Network.  The report assumes that the
user knows how to operate  a  server  Host  system  somewhere  on  the
network  once  he  becomes  connected  to  that system, and the report
defines the procedures and options the user has available to establish
that connection.

     The ARPA  Network,  IMPs  and  TIPs,  hardware  maintenance,  TIP
operation,  and  formats  and  protocols  are not described here.  The
bibliography (Appendix C) lists the relevant documents.

     At the time of  this  writing  we  at  Bolt  Beranek  and  Newman
Inc. (BBN)  have  operated  the  TIP  extensively  with  the following
terminal types:

      KSR-33 Teletype
      KSR-37 Teletype 
      IBM-2741 (Correspondence)*
      IBM-2741 (P.T.T.C.)*
      DATA 100 (at 110, 150, 300, 600, and 1200 bps)
      EXECUPORT (at 110, 150, and 300 bps)
      INFOTON VISTAR I (at 110, 150, 300, 600, 1200,
           1800, 2400, and 9600 bps)
      IMLAC PDS-1 (at 1800, 9600 bps, and synchronous)
      ODEC 132 LINE PRINTER
      TELETYPE INKTRONICS (Line printer)
      TI 733
      TELERAY
      ANDERSON-JACOBS 832
      DECWRITER II 
      DATA PRODUCTS LINE PRINTER MODEL 2410 or 2411

     Where possible, all these devices have been operated with  direct
connections to the TIP and also over a 103A dial-up modem.

     We have also briefly operated the TIP or heard of the  TIP  being
operated with a variety of other types of terminals.  These are listed
in Appendix D.  For your own safety, before you purchase any  terminal
listed  in  Appendix D or any other terminal for use with the TIP, you
should check with BBN and try it with a TIP.

     One TIP is configured with a magnetic tape drive which is used as
discussed in Section 8.

     It  should  be  noted  that  the  TIP  is  designed  to   support
interactive,  asynchronous  terminals.   It  cannot  normally  support
synchronous  devices,  or   devices   whose   input   (to   the   TIP)
characteristics are significantly different from a human typist.  Thus
--------------- 
*For a 2741 to operate with the TIP, the 2741 must have  the  transmit
interrupt option and receive interrupt option.

Report No. 2183       Bolt Beranek and Newman Inc.              Page   5
July 1977 Revision


the connection of computers,  paper  tape  readers,  polled  circuits,
buffered  terminals,  and so on to TIP ports is likely to be difficult
or impossible.

Report No. 2183       Bolt Beranek and Newman Inc.              Page   6
July 1977 Revision


2.    THE NETWORK VIRTUAL TERMINAL

     A key concept in the use of the network  is  the  notion  of  the
virtual  terminal.   Instead  of  asking each Host system to cope with
every terminal type at every other Host in the  network,  we  ask  the
Host  to  cope  with  a single (imaginary) terminal called the Network
Virtual Terminal.  Your TIP will translate the data you type  to  make
it  look like virtual terminal code, and translate the remote system's
response back into your terminal's code.  While we will often  pretend
that  this  translation does not exist, it is, in fact, always present
and of crucial importance to the user.

     It is probable that the manual describing the use of  the  remote
system  is  written  in  terms of a user at the virtual terminal, most
likely as a system description based on local terminals plus an add-on
piece  telling  how  to  use the virtual terminal as a local terminal.
Virtual terminal code may include symbols which do not exist  on  your
own  keyboard.   Combinations of your available characters are used in
such cases.  You  may  even  find  that  the  translation  makes  your
terminal  different  from  a local terminal of the same make.  We have
tried to minimize this problem.

     The Network  Virtual  Terminal  has  128  keys,  often  in  upper
case/lower  case  pairs.  These keys correspond to the full ASCII set.
In addition, there are a few control keys, like the "BREAK" key.   The
terminal  is  capable of full and half duplex operation, under control
of a user-oriented switch.  The meaning of the control  keys  and  the
way  to  enter the full 128 keys from each of the terminal types which
the TIP supports is described in Section 6 of this report.

     The user talks to the TIP after  the  code  conversion  has  been
made;  that  is,  the  TIP  expects  virtual terminal characters.  The
descriptions below are in terms of virtual terminal codes.

Report No. 2183       Bolt Beranek and Newman Inc.              Page   7
July 1977 Revision


3.    THE TIP COMMAND FORMAT

     The user at a terminal will at various times be talking  directly
to  his  TIP instead of to the remote Host.  A typical message of this
sort might look like:

                         @ OPEN 15

Such a command always starts with symbol @  and  ends  with  either  a
linefeed* or a rubout, depending on whether the user is satisfied with
the command or wishes to abort it.  The only exception to this rule is
the specific command

                             @@

which inserts an @ in the data stream to the Host.  Commands may occur
anywhere,  and need not start on a new line.  Upper and lower case may
be freely intermixed in the command.

     Between the @ and the linefeed there will  typically  be  one  or
more  words  to  identify  the  command,  perhaps followed by a single
parameter.  The TIP is not very sophisticated,  and  thinks  the  only
important  thing  about  a word is its first letter.  This permits the
user to abbreviate a bit;  the  more  usual  rendering  of  the  first
example might be:

                           @O 15

     Once the user has started typing the parameter of a  command  the
old  value  of  the  command  will  have been destroyed, and cannot be
recovered by aborting the command.

     Almost without exception the effect of a TIP command is to set  a
parameter  or  mode for the terminal.  Even apparently direct commands
like

                         @ OPEN 15

(which initiates an elaborate exchange  of  messages  resulting  in  a
connection  to  the  remote  Host  system) actually set a mode flag to
request the appropriate action when the TIP is free to  undertake  it.
To  understand  the  TIP behavior is really to understand the complete
set of parameters and the commands  to  change  them.   Normally,  any
parameter  can  be  changed  at  any time by the user at his terminal.
Exceptions occur when the user tries to change  connection  parameters

--------------
*On 2741 terminals the return key transmits carriage-return/  linefeed
to  the  TIP and ASCII terminals are normally operated in a mode where
typing a carriage-return is interpreted  as  carriage-return/linefeed;
both  can  be used to terminate TIP commands in addition to a linefeed
alone.

Report No. 2183       Bolt Beranek and Newman Inc.              Page   8
July 1977 Revision


on an open connection.  An @OPEN 13 executed while talking to Host  15
would  generate  the  error message "Can't" (the connection to Host 15
must be closed before a connection can be opened to Host 13).

     Commands often consist of several command words; for example,

                    @ DEVICE CODE ASCII

Such commands may be abbreviated; for example

                          @ D C A

The spaces are required: @ DCA is not  a  legal  command.   Upper  and
lower case letters may be freely intermixed.

     An unusual variation in command  format  is  to  place  a  number
between  the  @  and the first word of the command.  In this case, the
command is not meant for the terminal  typing  but  for  the  terminal
attached to the port of that number on the same TIP as the user.  This
feature is described in some detail in the section on unusual uses  of
the TIP, section 5.

Report No. 2183       Bolt Beranek and Newman Inc.              Page   9
July 1977 Revision


4.    TYPICAL USE OF THE TIP

     In the normal course of things, a user will go through four  more
or  less  distinct  stages  in typing into the net.  First, he will be
concerned  with  hardware-power,  dialing  in,  etc.   Then  he   will
establish  a  dialogue  with  the  TIP  to  get  a  comfortable set of
parameters for this usage.  Next, he will instruct the TIP to  open  a
connection  to  a  remote Host; and finally, he will mostly ignore the
TIP as he talks to the  remote  Host.   The  following  sections  will
describe these stages in more detail.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  10
July 1977 Revision


A.    Hardware Stage

     The hardware stage is primarily described  in  Section  9.   This
section  describes  only  the  final  step of this stage, when the TIP
detects a terminal on one of its previously idle lines.  At that point
the TIP normally goes into a "hunt" mode.  In this mode it expects the
very first character it sees to describe the  terminal,  according  to
the following scheme

        ASCII Terminals at 110, 150, or 300 baud type E.  (Note
        that this must be upper case.)

        2741 Correspondence Terminals type j, 4, o, or l depending
         on the element used with the terminal -- see Table 4-A. 

        2741 PTTC Terminals type:

             6 for model* 938, 939, 961, 962, or 997
             o for model 942 or 943
             w for model 947 or 948
             f for model 963, 996, or 998

        ASCII Terminals transmitting at 110 but receiving at
        1200 baud type D.  (Again, upper case)

     The TIP will deduce  terminal  rate,  character  size,  and  code
conversion  based  on  the  character  typed.   When the TIP makes its
decision it types out  TIP's  name  in  the  terminal's  own  language
followed  by  the  version  number  of the TIP software system and the
octal port number.  Then it is ready to go.  If no TIP  name  appears,
or  if  garbage appears, hang up your data set and redial.  For direct
connections Power Off is usually equivalent to hanging up.

     Some terminals need special delays at the end of their  lines  in
order  not  to  lose  characters  when running at high speed.  The TIP
currently knows how to do this timing for the ODEC  line  printer  and
several other devices.  The two commands

                    @ DEVICE CODE EXTRA-PADDING
                    @ DEVICE CODE OTHER-PADDING

will instruct the TIP to insert these delays.  One device we know  of,
a  Model 37 Teletype, requires a special parity computation to be able
to print correctly.  The command

                    @ DEVICE CODE 37




--------------
*The model name and number is stamped on the top of the  element.   If
you can't find it, trial and error works.  Try "f" first.  

Report No. 2183       Bolt Beranek and Newman Inc.              Page  11
July 1977 Revision


instructs the TIP to insert the proper parity; when not in  this  mode
the TIP sets the parity bit to zero for all output characters.  Echoed
characters are echoed without parity calculation.  These commands  are
discussed more fully in section 5.

     On  all  terminals  which  hunt  to   300   baud,   Device   Code
Extra-padding  (@  D  C  E)  automatically  will be in effect.  On all
terminals  which  hunt  to  150  baud,  Device  Code  37  (@  D  C  3)
automatically  will  be in effect.  These effects can be canceled with
the command @DEVICE CODE ASCII (@ D C A).

Report No. 2183       Bolt Beranek and Newman Inc.              Page  12
July 1977 Revision


                         TABLE 4-A

Hunt Character to be used for IBM 2741 Correspondence
Type Elements


NUMBER    NAME                  HUNT CHARACTER
001       Scribe                4
005       Letter Gothic         4
006       Manifold 72           j
007       Elite 72 *            4
008       Pica 72 *             4
010       Manifold 72           j
012       Prestige Elite *      4
014       Light Italic          j
015       Courier 72 *          4
019       Manifold 72           j
020       Dual Gothic           4
021       Dual Gothic           o
025       Scribe                o
026       Elite 72 *            o
027       Pica 72 *             o
028       Manifold 72           o
029       Courier 72 *          o
030       Adjutant              4
031       Adjutant              o
032       Light Italic          o
033       Prestige Elite *      o
034       Script                o
035       Delegate              o
036       Advocate              o
039       Letter Gothic         o
043       ASCII                 l
050       Advocate              4
053       Artisan 12-72         4
055       Artisan 12-72         o
059       Orator                j
060       Orator                o
067       Courier 12            4
068       Courier 12            o
070       Delegate              4
085       Courier 72            4
086       Courier 12 Italic     o
090       Script                j
123       Prestige Pica         o
129       Adjutant              o
130       Advocate              o
131       Artisan 12-72         o
132       Courier               o
133       Courier 12 Italic     o


* These type elements can be customized for you. Contact your
local IBM office for information.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  13
July 1977 Revision


134       Courier 72            o
135       Delegate              o
136       Dual Gothic           o
137       Elite 72              o
138       Letter Gothic         o
139       Light Italic          o
140       Manifold 72           o
141       Orator                o
142       Pica 72               o
143       Prestige Elite 72     o
144       Scribe                o
145       Script                o
154       ASCII                 l
158       Bookface Academic 72  o
161       Large Elite 72        o

Report No. 2183       Bolt Beranek and Newman Inc.              Page  14
July 1977 Revision


B.    Establishing Parameters


     In stage two, the user is concerned with initializing parameters.
The  naive  user  should  skip  stage two and accept the TIP's default
parameters until an obvious problem arises.  The  following  questions
are answered in stage two.


     1.  When shall the TIP send off messages to the remote Host? Here
there  are  several  options.   (The TIP is inialized to send on every
character, which is simple but inefficient.)

                      @ TRANSMIT NOW
                      @ TRANSMIT ON MESSAGE-END
                      @ TRANSMIT ON LINEFEED
                      @ TRANSMIT EVERY  



     TRANSMIT NOW causes the message currently being accumulated to be
sent as soon as possible.  TRANSMIT ON MESSAGE-END causes a message to
be sent as  soon  as  possible  after  an  ASCII  DC3  (control-S)  is
encountered.  TRANSMIT ON LINEFEED causes a message to be sent as soon
as possible after  a  linefeed  is  encountered.   Additionally,  both
TRANSMIT  ON  MESSAGE-END and TRANSMIT ON LINEFEED cause characters to
be accumulated  in  the  message  buffer  until  it  is  almost  full.
TRANSMIT  EVERY     causes a message to be sent as near as possible to
every  th character.  The command TRANSMIT EVERY 0 will reset the  TIP
to  its initial state, transmitting every character.  If the parameter
to TRANSMIT EVERY # is a large number (e.g., 250) the TIP will save up
as  many  characters  as it can before sending a message, but does not
offer any guarantee that the total number specified can be buffered.



     2.  Who shall echo  and  when?  Echoing  is  a  complex  problem,
without  any neat solution.  We have chosen to give the user the means
to tell the TIP how he or she wants it done, since it is hard to guess
correctly  in  advance.   Basically, echoing can occur at the terminal
hardware, in the TIP, or in the remote Host.   The  corresponding  TIP
commands are:

       @ ECHO HALFDUPLEX     (Echo at the terminal)

       @ ECHO LOCAL
  or   @ ECHO ALL            (Echo at the TIP)

       @ ECHO REMOTE
  or   @ ECHO NONE           (Echo at the remote Host)


Report No. 2183       Bolt Beranek and Newman Inc.              Page  15
July 1977 Revision


     Each of these commands sets the internal state of the TIP to  the
correct  mode, and in addition sends the appropriate TELNET command to
the Host if the connection is open when the  command  is  given.   The
commands  ECHO  ALL  and  ECHO NONE are now exactly equivalent to ECHO
LOCAL and ECHO REMOTE; they have been  left  temporarily  while  users
become accustomed to the new usage.

     In the ECHO REMOTE mode, although characters for the remote  Host
are  not  echoed,  the  TIP  will  echo  commands.   Network  protocol
specifies that echoing shall start out in the @ ECHO LOCAL or  @  ECHO
HALF modes.  The TIP will try to guess from the terminal type which of
the two is appropriate.  The goal of the echoing strategy is to  avoid
the  unreadable  alternatives  of  the  blank page and the doubling of
every character.  The naive  user  is  advised  to  accept  the  TIP's
default  parameters  until trouble of this sort arises.  A 2741 cannot
change echo mode and is always halfduplex.

     Because both the TIP and the remote Host need to agree on who  is
to  echo  the  characters,  the  TELNET  protocol provides a mechanism
whereby the remote terminal user may instruct the serving Host to  set
a particular mode and viceversa, the remote Host may instruct the TIP.
As noted above, this happens automatically when the command  is  given
by  the user while the connection is open.  But the Host too may issue
such commands to the TIP, and the  TIP  is  not  able  to  refuse  the
request   (even  for  2741  terminals).   If  the  connection  becomes
established in an undesirable mode, the user may change this by one of
the echo commands above.

     The  NEW  TELNET  protocol  handles   this   mechanism   somewhat
differently, as described in Appendix E.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  16
July 1977 Revision


C.    Connection to Remote Sites

     In stage  three,  the  user  is  concerned  with  establishing  a
connection to a remote site.

                         @ OPEN 15

This amounts to "set the Host number parameter" and "add the  user  to
the  queue  of  users  waiting  for  the  TIP's connection mechanism".
Appendix A lists the Host numbers of all the sites  currently  in  the
network.

     Currently, Host addresses are single decimal numbers,  as  shown.
Additionally the TIP accepts a two number Host address as follows:

                <Host # on the IMP>/<IMP #>

     Leading zeroes are not required.  Therefore, for example, @  HOST
44, @ HOST 0/44 or @ HOST /44 are all identical.

     Connecting to a Host requires establishing a bi-directional link,
so  that  the terminal can send characters to the Host and vice versa.
The request to connect to a Host is thus really a request to establish
both transmit and receive sections.

     When the user reaches the head of the queue waiting for the TIP's
"connection" mechanism, the TIP will type "Trying...".

     Following the message "Trying", the user will receive some of the
following messages:

        Open           success*
        Net Trouble    remote site cannot be reached
        Refused        remote site up but refusing
        Host Scheduled Down Until Sat. at 1850 GMT
                       Host will be back up at time and date
                       indicated
        Host Unscheduled Down Until Sat. at 1850 GMT
                       Host will back up at time and date
                       indicated
        Host not responding
                       Remote site not up, unknown when up
                       service will resume
        ICP Interfered With
                       The Host has not performed the ICP
                       correctly and the TIP has refused
---------------
*"Open" indicates both halves  of  the  TELNET  connection  have  been
opened  simultaneously.   Sometimes  "Open R" followed by "Open T" (or
vice versa) will be printed; this too indicates  both  halves  of  the
connection have been opened, but not simultaneously.  If only "Open R"
or "Open T" is printed, then the server Host has failed  to  open  one
half of the TELNET connection.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  17
July 1977 Revision


                       to open a connection.

     The connection mechanism will  run  continuously  until  a  state
described  above occurs.  This can be annoying when the remote site is
obviously not going to respond.  The command

                          @ CLOSE

will abort the current connection attempt.  The user is then  free  to
reattempt to open the connection or to attempt to open a connection to
some other Host.

     The TIP's connection mechanism has caused  users  some  problems.
Perhaps a discussion of what the connection mechanism is doing and how
it works will alleviate some of the grief.

     First of all, users attempting to connect to different Hosts will
never   interfere  with  each  other,  although  users  simultaneously
attempting to connect to the same Host will be serviced serially.

     For the user, opening proceeds in three phases.   In  the  first,
the user is queued up waiting to "get" the TIP's connection mechanism.
In the second, the user has gotten the TIP's connection mechanism  and
is  beginning  the  connection  sequence.   In the third, the user has
completed the connection sequence and is waiting for the Host to  open
up  the  actual  data connections.  Many of the problems stem from the
fact that only one user may be proceeding through phase 2 at  a  given
time  to  a given Host.  Hence the the TIP types out "Trying" when you
get off the queue and the connection mechanism begins trying  to  open
your  connections.  Thus the "Trying" message signifies the transition
from phase 1 to phase 2.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  18
July 1977 Revision


D.    Use of Remote Sites

     In stage four, the user is normally talking to the  Host  without
concern for the TIP.  All the TIP commands are still available.

     One command that will eventually be of interest here is

                          @ CLOSE

This command starts  the  shut-down  procedure.   The  TIP  will  echo
"Closed"*  when the process is finished.  The TIP does not know how to
log you out of the remote Host.  You  must  do  this  yourself  before
closing the connection.

     The virtual terminal  has  a  key  labeled  "BREAK".   Some  real
terminals  have  a  break  key,  and  some  Host systems expect to see
breaks.  Those terminals with a break key (but not the 2741 ATTN  key)
may simply use it.  Others must type the command

                        @ SEND BREAK

The interpretation of the break is entirely up to the  receiving  Host
-- many Hosts ignore it.

     The virtual terminal also has a  key  labeled  "SYNC".   No  real
terminals  have such a key, and the function is unique to network use.
The "SYNC" key is a clue to the remote Host that there is an important
message  which  seems  to be buffered in an "inaccessible" place.  The
TIP and the Host go to some trouble to get the SYNC indication over  a
different  channel  which  bypasses  the normal buffering conventions.
The command to send a SYNC is

                        @ SEND SYNC

Typical usage of these commands might be @ S B followed by @ S S.

     As stated earlier, the TIP nominally treats  a  carriage-  return
typed by a user as a carriage-return/linefeed.  The user may cause the
TIP to treat carriage-return as only carriage-return by executing  the
command

                    @CLEAR INSERT LINEFEED


-----------------
*"Closed" indicates that the server Host agreed to close  both  halves
of  the  TELNET  connection  simultaneously.   If  the  halves  of the
connection are closed  one  after  another,  "Closed  R"  followed  by
"Closed T" (or vice versa) will be printed.  If only one of "Closed T"
or "Closed R" is printed, wait a minute and the  TIP  will  force  the
other half of the connection to be closed.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  19
July 1977 Revision


To return to the nominal mode of carriage-return/linefeed, the command

                    @INSERT LINEFEED

should be executed.

     If at any given time the user  types  characters  faster  than  a
server  Host  will take them from the TIP, the TIP discards characters
it can not buffer and echos them with an ASCII BEL  (on  a  2741,  the
type element is wiggled).

     The user may sometimes  use  a  server  Host  with  which  it  is
desirable  not  to  have  @ be a TIP reserved character.  The user can
change the character which introduces TIP commands using the command

                    @INTERCEPT #

By typing @INTERCEPT followed by  a  decimal  number  representing  an
ASCII  character,  the  user changes the TIP command character for his
device  to  the  ASCII  character  represented  by  the  number.   The
INTERCEPT ESC command resets the TIP command character to at-sign (@).
Thus,

                    @INTERCEPT 42
                    *INTERCEPT ESC

changes the TIP command character to asterisk (*) and back to  at-sign
(@)  assuming  the device was in the nominal mode (@) before the first
command was executed.

     If the user attempts to change the intercept character but  fails
to  type  a valid decimal number (or a character string beginning with
E) the TIP will type the diagnostic "Num" and will set  the  intercept
character to at-sign.  

Report No. 2183       Bolt Beranek and Newman Inc.              Page  20
July 1977 Revision


E.    Connection Loss and Restoration


     Starting with TENEX Hosts*  running  Software  Version  1.32,  if
TENEX halts, the TIP will notify users connected to it of this fact by
typing "Connection Suspended".  At this point the users are free to do
one  of two things.  First, they can wait till TENEX restores service,
in which case the TIP will type out "Connection Restored" (or if after
the the service interruption the connection could not be restored, the
TIP will type out "Host broke the  connection").   Alternatively,  the
user is free to open a connection to any other Host, in which case the
TIP will invisibly close the TENEX connection.  It is  also  important
to point out that if a user just leaves his terminal unattended across
a TENEX service outage without releasing the connection  (any  network
related  command  such  as  @H,  @O,  @N, @C will do the job) his job,
directory, etc., are left at the mercy of  anyone  who  acquires  that
terminal.

































-------------------
Other Hosts may also implement the mechanisms which will allow
the suspension and restoration of connections.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  21
July 1977 Revision


F.    TIP News and User Feedback

     There is frequently information which the  group  developing  and
debugging the TIP system wishes to convey to TIP users.  For instance,
when a bug is detected, we may wish to warn users not to use a certain
feature  until the bug is fixed.  When a minor improvement is made, we
may wish to notify users.  Further, there is frequently news about the
state of the network or the state of a particular Host which should be
conveyed to TIP users.  Finally, TIP users  may  wish  to  communicate
with  the  TIP  development  staff or the Network Control Center staff
about problems or suggested improvements for the TIP or  the  network.
Consequently,  we  have  constructed  a  mechanism  which we hope will
provide for communication in all the above directions.  This mechanism
is the Network Virtual TIP Executive.* To activate this mechanism, the
TIP user may give the TIP command @N.  This command causes the TIP  to
perform  the  necessary  protocol  to make a connection to the Network
Virtual TIP Executive which resides on several of  the  network  TENEX
systems.   Once  the Network Virtual TIP Executive has been activated,
we think  its  operation  is  self-explanatory.   Presently  available
features  within  the Network Virtual TIP Executive are a Network News
feature, a Host Status feature, and a  "Gripe"  feature.   The  latter
provides  users  with  a  mechanism  for  sending  messages to the TIP
development or NCC staffs.   We  recommend  that  TIP  users  get  the
network news at the beginning of every TIP session.

     The TIP will normally prompt the user  to  consider  reading  the
news by typing the message:

     Latest net news DATE
     Use "@N<cr>" followed by "netnews<cr>"

at some point(s) during the user's session.  The point  chosen  is  at
the  time of terminal recognition for "hunting" terminals (see Section
4.A), or at  each  time  a  connection  is  closed  for  "non-hunting"
terminals (see Section 5.A).

     When a user issues an @N command, the TIP requests  support  from
all  cooperating  servers.   Thus,  the user should be able to reach a
←←←
news facility, somewhere, almost all of the  time.   However,  in  the
event  that  no  cooperating server is available the TIP will time out
the @N command in about thirty seconds.  An @C command will  abort  an
@N immediately.

     Of course, TIP users with an  immediate  need  for  communication
with  the NCC or TIP development staffs should telephone (collect) the
Network Control Center (617-661-0100).  Users with  general  questions
----------------
*A version of the Resource Sharing Executive being  developed  by  the
BBN TENEX Group.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  22
July 1977 Revision


about network usage (How do I find out if Host X is ever going  to  be
up  again?  What's  happening with a Host/Host protocol for graphics?)
may also call the NCC.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  23
July 1977 Revision


5.    UNUSUAL USES OF THE TIP

     The "usual" use of a TIP is to connect one of the terminals which
the  TIP  supports  to  a  remote  Host.   We  have tried to make this
operation as easy and natural as possible  for  the  user.   "Unusual"
uses of the TIP are such things as connecting a non-standard terminal,
talking terminal-to-terminal, or using unusual protocols.   Such  uses
are  possible, but within the constraints of the TIP's size it has not
always been feasible to make them easy.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  24
July 1977 Revision


A.    Device Parameters

     The TIP uses a Hunt algorithm to determine device parameters.  On
standard  low  speed terminals it works well and easily.  If something
more complicated is desired, like establishing a rate  over  300  bps,
the user must set these parameters himself.

     The  @DEVICE  RATE  command  does  not   affect   the   hunt-bit.
Therefore, the only way to change a port to, or from, being hunting is
to have the TIP site liaison call the NCC and have it done.

     The TIP stores device parameters  in  a  10-bit  field  as  shown
below:



                   bits
          -.-.-.-.-.-.-.-.-.-.-
          !   4   ! 2 !   4   !
          -.-.-.-.-.-.-.-.-.-.-
              !     !     !
              !     !     ---Input rate
              !     !
              !     ---Character size
              !
              ---Output rate



where character size is 5 less than the number of bits  per  character
and  the 16 rates are zero, 75, 110, 134.5, 150, 300, 600, 1200, 1800,
2400, 4800, 9600, 19200, unused,  unused,  and  external  clock.   The
4800, 9600 and 19.2K rates are available only for output.

     The user can change device parameters with the command

                      @ DEVICE RATE #

where # is the decimal equivalent of the 10-bit field the user  wishes
to  establish.   The  command  will  often  be  executed  from another
terminal (see Section 5-D below).

Report No. 2183       Bolt Beranek and Newman Inc.              Page  25
July 1977 Revision


     Some examples follow:

          @D R    bps
          178     110     ASCII in and out
          308     150
          373     300
          438     600
          503     1200
          568     1800
          633     2400
          754     110 in 9600 out

          243     134.5   2741 in and out 

The user can set device code conversion with the commands

                    @ DEVICE CODE ASCII
                    @ DEVICE CODE EXTRA-PADDING
                    @ DEVICE CODE OTHER-PADDING
                    @ DEVICE CODE 37

EXTRA-PADDING is ASCII with a slow  carriage-return.   This  mode  has
been  found  to  be  useful  with EXECUPORT, T.I., AND DATAPOINT 3300.
DEVICE CODE OTHER-PADDING is ASCII for a line-printer  which  requires
special  timing  for a slow linefeed as well as a slow carriage-return
and also requires a minimum number of characters per line  of  output.
Two   line-printers   are   currently  handled  via  the  DEVICE  CODE
OTHER-PADDING option.  These are the  ODEC  printer  and  the  MEMOREX
printer.    A  given  TIP  can  be  configured  so  that  DEVICE  CODE
OTHER-PADDING refers to either the ODEC or the MEMOREX printer but not
both.  

     Often the device code commands will be executed by  one  terminal
for  another  terminal,  as described in Section 5-D below.  Sometimes
they are executed as the last step before changing a terminal's  rate.
The  code  sets  ASCII,  EXTRA-PADDING,  and OTHER-PADDING are similar
enough so that a terminal shifting from one to another will  still  be
able  to  talk  to  the  TIP.   All are basically ASCII with different
timing for the end of line.  DEVICE CODE ASCII clears  the  effect  of
the other three DEVICE CODE commands.  The command

                    @DEVICE CODE 37

can be used to set up the TIP to correctly handle a Model 37 Teletype,
namely to compute even-parity for output characters (echoed characters
have the parity they had when sent from the terminal to the TIP).

Report No. 2183       Bolt Beranek and Newman Inc.              Page  26
July 1977 Revision


B.    Talking to Another TIP

     One can talk to a device on another TIP (or your own  TIP)  using
the  TIP  as  a  fancy telephone connection.  This is not particularly
easy, especially since the only label a TIP knows for a device is  its
hardware   port  number,  which  neither  user  may  happen  to  know.
Supposing the port numbers are known, one must  establish  a  pair  of
connections   between   the   two  ports.   The  protocol  for  making
connections specifies that each end of each connection will be labeled
by  a  32-bit socket number.  The TIP puts the port number in the high
order 16 bits of the socket number, and 2 (or 3) in the low order bits
for the receiving (or sending) socket.  The user must tell the TIP the
Host number (in decimal) and socket number (in octal) for the  foreign
end  of  both  the  transmit and receive connections, for example, the
commands

                    @ SEND TO HOST 158
                    @ RECEIVE FROM HOST 158
                    @ SEND TO SOCKET 1600002
                    @ RECEIVE FROM SOCKET 1600003

Simultaneously the far end must establish the corresponding parameters
for  his  half  of  the  connection.   Then one side or the other must
initiate the connections using the two commands

                    @ PROTOCOL TO TRANSMIT
                    @ PROTOCOL TO RECEIVE

This will open the full duplex connection.  In the example  above  the
connection  is to Port 7 at Host 158.  Alternately, a shorter sequence
of commands may be used, namely

                    @ HOST 158
                    @ SEND TO SOCKET 1600002
                    @ RECEIVE FROM SOCKET 1600003
                    @ PROTOCOL BOTH

     If the terminals are full duplex, it will probably  be  necessary
for each terminal to use ECHO ALL mode.

     A problem in making TIP-to-TIP connections  is  ascertaining  the
port  numbers of the TIP ports between which communication is desired.
The greeting message typed by the TIP on a hunting port  includes  the
octal  port  number.   The  @RESET  command  on non-hunting ports also
provides this information.  In addition, the The Network  Virtual  TIP
Executive  (@N)  offers  aid  in this area through its TRMINF command.
The socket number printed by the TRMINF  command  is  the  octal  port
number  of  the  TIP  terminal executing the TRMINF command via the @N
command.

     In the future, we will possibly make available  via  the  Network
Virtual  TIP Executive a capability to link and send messages to users
on other TIPs and TIP ports by name.  The capability already exists in

Report No. 2183       Bolt Beranek and Newman Inc.              Page  27
July 1977 Revision


the  Network Virtual TIP Executive for linking to users of some server
Hosts.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  28
July 1977 Revision


C.    Binary Mode

     Seven-bit binary is possible using the regular  TELNET  Protocol.
It is necessary to turn on and off command interpretation to allow the
TIP input routines to pass along all 128  possible  input  characters.
There are two commands to do this,

                    @ INTERCEPT ESC
                    @ INTERCEPT NONE

The first command puts the TIP in its normal mode, the second in 7-bit
binary mode.

     Eight-bit binary mode is possible using the commands

                    @ BINARY INPUT START
                    @ BINARY INPUT END
                    @ BINARY OUTPUT START
                    @ BINARY OUTPUT END

When a TIP is in binary output mode,  all  eight  bits  of  characters
coming  from the network are sent to the terminal.  This may result in
strange things being printed on a printer.   It  would  probably  make
more  sense  to send 8-bit binary output to devices such as paper tape
punches.  When a TIP is in  binary  input  mode,  all  eight  bits  of
characters entered at the terminal are sent to the network.

     Since commands from a terminal in binary input mode or  INTERCEPT
NONE  mode can no longer be recognized, removing a terminal from these
modes must be done with a command from another terminal  as  described
immediately  below.  As the TIP's default mode is INSERT LINEFEED, the
user will probably desire to CLEAR INSERT LINEFEED  (@C  I  L)  before
using 8-bit binary mode; perhaps also for 7-bit binary mode.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  29
July 1977 Revision


D.    Setting Another Terminal's Parameters

     Any command may be preceded by a number,  in  which  case  it  is
meant  for  a device other than your own.  The device port number must
be in octal.  For example,

                    @ 16 DEVICE RATE 633

would set the characteristics for device 16 to ASCII code,  2400  baud
input and output.  In this case we speak of "capturing" device 16.

     Such a mechanism needs some form of protection: the TIP remembers
the  number of the capturing device and does not allow a second device
also to capture until the first device  explicitly  gives  up  control
with the command

                    @ 16 GIVE BACK

     If a device chooses to capture himself by preceding  any  command
by  his  own  device  number he is then invulnerable to tampering from
another device.

     This format is usually used in conjunction with the  DEVICE  RATE
command  to  initialize  some non-standard device, like a printer or a
high-speed CRT terminal.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  30
July 1977 Revision


E.    The DIVERT OUTPUT Command

     It is possible (with some care) to divert the output intended for
one  terminal to another terminal.  Presumably the second terminal has
a desired feature, like hard copy or high speed.  The command

                    @ 16 DIVERT OUTPUT

will cause all remotely generated  output  to  be  diverted  from  the
terminal  on  which  the command was typed to Terminal 16.  This state
will continue until any other command is  executed  at  the  diverting
terminal.   (Executing  another  command  does  not  do  a Give Back.)
Local-echoing will not be diverted,  and  input  may  proceed  at  the
diverting terminal.

     This mechanism is not natural to the structure  of  the  program.
In particular, the buffer allocation structure becomes confused if the
diversion aborts while output is in progress.  Chained diversion  will
also  confuse  the  TIP.  Please don't try these things: all that will
happen is that one or both terminals involved  will  stop  responding.
In  fact,  in  general, we discourage use of the DIVERT OUTPUT command
and suggest printing to TIP devices other than the user's own terminal
by  programs  such  as  the TIPCOPY program which runs on many network
TENEXs.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  31
July 1977 Revision


F.    Editing

     At the moment the only editing command available is

                    @ FLUSH

which deletes all the  characters  in  the  TIP's  input  buffer.   In
current  practice this command is used to clear out any odd characters
stuck in a TIP prior to giving an OPEN command.  (The TIP  accumulates
characters typed in during periods of non-connection and sends them as
the first data over a new connection.)

     To abort a command, type a rubout or merely make something  about
the command illegal; for example,

                    @O X

The "X" aborts the OPEN command.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  32
July 1977 Revision


G.    Wild

     Setting a device wild allows the device to receive any connection
from  a  designated  Host  or to receive any connection from any Host.
TIP ports cannot be set permanently wild from other  TIP  ports,  they
must be set wild by the NCC.  The command to set a port wild is

                    @SET DEVICE WILD

This instructs the TIP to accept an attempt to connect from  any  Host
using any sockets.  This command can be cancelled by the command

                    @CLEAR DEVICE WILD

If a user desires to accept an attempt to connect  from  a  particular
Host using any sockets the set of commands

                    @HOST #
                    @SEND TO WILD
                    @RECEIVE FROM WILD

should be used.  This instructs the  TIP  to  accept  any  attempt  to
connect  from  the Host whose decimal address is specified in the Host
command.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  33
July 1977 Revision


H.    Low Level Protocol Commands

     Several low level TIP commands exist  which  allow  the  user  to
manually do Host/Host protocol.  These commands are

                    @ INITIAL CONNECTION PROTOCOL
                    @ PROTOCOL BOTH
                    @ CLOSE
                    @ PROTOCOL TO TRANSMIT
                    @ PROTOCOL TO RECEIVE
                    @ RECEIVE FROM HOST #
                    @ SEND TO HOST #
                    @ HOST #
                    @ SEND TO SOCKET #
                    @ RECEIVE FROM SOCKET #

     Examples of the use of some of these commands are given below.


          @H 69     /"logging in" to a socket
          @R F S 13 /other than socket 1
          @I C P    /on a server Host


          @C        /attempt to close both halves of
                    /an open connection
          Closed R  /closed R side of connection
          Closed T  /closed T side of connection


The rest of the low level protocol commands listed above were used  in
the example of section 5-B.

     There is one other low level protocol command, a command to reset
the NCP in the Host specified in a @ SEND TO HOST command.  Since this
command resets all connections between the TIP and the specified Host,
it  should only be used as a last resort.  A responsible person at the
TIP site should contact the NCC if the need arises.

     The commands: @ R F H, @ S T H and @ H all require a Host address
parameter.   Currently,  that  parameter  is  a single decimal number.
Additionally, the TIP  will  accept  a  two  number  Host  address  as
follows.

                <Host # on the IMP>/<IMP #>


     Leading zeroes are not required.  Therefore, for example, @  HOST
44, @ HOST 0/44, or @ HOST /44 are all identical.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  34
July 1977 Revision


I.    Commands from the Network

     When a TIP terminal receives the character  207  (octal)  in  the
input  stream from the network, the characters following the 207 up to
the next linefeed are treated as  a  command  typed  on  the  terminal
keyboard.  (The 207 takes the place of the @; the @ should not be sent
through the network.) In this way Hosts can remotely control  the  TIP
terminals.   For example, a Host might send a command to the TIP which
causes maximum size messages to be sent from the TIP terminal  to  the
Host.  The TIPs themselves can send commands to other TIP terminals by
using the command

                    @ SEND COMMAND

which inserts the 207 character in the output stream to  the  network.
This  feature  is  evolving,  so  we  do  not recommend its use at the
present time.

     It must be noted that this 'feature' is ONLY available under  the
OLD  TELNET  protocol.   In  theory,  NEW TELNET will provide the same
capabilities within the framework of the protocol itself  rather  than
as a special mechanism for TIPs.  As of this writing, however, not all
the comparable options have been implemented.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  35
July 1977 Revision


J.    The RESET Device Command

     The reset device command (@RESET) will  restore  a  port  to  its
initial  state.   Implicit  in  this  command  is  the  concept  of  a
"permanent  device."   Currently,   "permanent"   is   the   same   as
"non-hunting"  (see  section  5-A),  but  this  will not always be so.
Permanent devices are those requiring a particular set  of  parameters
that  is  not  expected  to change or perhaps for which the TIP cannot
hunt.  Examples are the IMLAC (no high speed hunt) and a line  printer
(no input possible).  Everything is reset as follows:

        a.   All network connections and attempts to open  connections
             are cleared;
        b.   If this device is captured  by  any  other  device,  that
             state  is  cleared  and  if  this device is capturing any
             other devices, that state is cleared;
        c.   Input buffers are initialized;
        d.   "Connection" parameters are reset  to  a  default  state*
             (i.e.,  echoing all, terminate every character, no insert
             linefeed, no device wild, intercept all);
        e.   The code, rate, and size are set to the hunting state.
        f.   The port's data set is hung-up.
        g.   Sets the terminal to make connections  under  OLD  TELNET
             protocol.

For permanent devices the RESET command does only a, b, c,  f,  and  g
above and prints "TIP NAME" followed by the TIP version number and the
octal port number.





















-----------------
*The default state for "binary" mode (Section 5.C) is rather
complicated and is being somewhat revised. For current infor-
mation, contact the NCC.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  36
July 1977 Revision


K.    TIP Configuration and Device Pre-initialization

     The set of terminals and uses of these terminals typically varies
from  TIP  site  to  TIP site.  Therefore, the TIP software system has
been constructed in a way which is somewhat modular to permit  varying
configurations  of the TIP software at different sites.  For instance,
with line printers, it is possible for a given TIP system  to  contain
code  to  handle  an  ODEC  line  printer or a MEMOREX line printer or
neither (not both).  As another example, it is possible to  distribute
the available space for device buffers among all sixty-three TIP ports
or to  allocate  the  available  space  to  only  a  few  ports  (thus
effectively  disabling  the remaining ports).  Finally, it is possible
to configure the TIP so certain ports are automatically set up to have
pre-determined  parameters  at TIP initialization time, thus relieving
TIP site personnel or users of the burden of manually setting up these
device parameters.

     The complete list of presently available options is given below:

1.   TIP configured with ODEC code or MEMOREX code or neither.

2.   TIP configured with EXTRA-PADDING code or without it.

3.   TIP port pre-initialization

        a.   Input buffer size
        b.   Output buffer size
        c.   Input rate
        d.   Output rate
        e.   No hunt or hunt (see section A)
        f.   Extra-padding (D C E) or not
        g.   Other-padding (D C O) or not
        h.   Wild (S D W) or not
        i.   No insert linefeed (C I L) or not
        j.   Half duplex (E H) or not
        k.   No intercept character (I N) or any intercept
             character
        l.   Echo none (E N) or not
        m.   Compute 37 parity (D C 3) or not

Of the above, f, g, and m are mutually exclusive, j and l are mutually
exclusive, and f through m depend on e being set to no hunt.

     Some configuration must be specified for each TIP.  If nothing is
specified  by the TIP site personnel, the TIP will be configured in an
arbitrary (but hopefully reasonable) manner.   Requests  for  specific
TIP  configurations should be made by the designated representative of
the TIP site to the Network Control Center.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  37
July 1977 Revision


6.   MAPPING THE VARIOUS DEVICES INTO THE NETWORK VIRTUAL TERMINAL

A.    TTY and TTY-like Devices (ASCII)

     At the moment this conversion follows the simple rule that if the
terminal  can  generate  and/or  print the code it will be sent and/or
received.  Otherwise there is no way to use the  code.   For  example,
there  is  no  way  to  enter  lower  case  characters from a Model 33
Teletype.


B.    2741 and  2741-like  Devices  (transmit  interrupt  and  receive
interrupt options required)

     The rule for these devices is  if  the  terminal  has  the  ASCII
graphic  it  will  translate  directly  to  that graphic.  Otherwise a
number of equivalences are defined,  most  of  which  consist  of  the
character  double-quote followed by some other character.  For each of
the eight variations of 2741 that we have considered there is at least
one way to type in the desired ASCII graphic.  To actually type in the
character  double  quote,  two  double  quotes  must  be   struck   in
succession.   On  output,  ASCII  characters which print on a Model 37
Teletype but have no representation on  a  2741  are  printed  as  the
equivalents  used  to  type  in  the  character, with some exceptions.
ASCII characters which do not print on a  Model  37  Teletype  do  not
print  on a 2741.  A double quote is not printed as two double quotes;
thus, on output the user must sometimes  determine  what  was  printed
from  the context as there is no unambiguous representation of all the
ASCII characters.

     The ATTN key is used to interrupt output.  It signals the TIP  to
hold off output for the duration of one TIP command; it is not seen by
the remote Host.  If used during input it is taken  as  a  request  to
send all the accumulated characters to the remote Host (like @TRANSMIT
NOW).

Report No. 2183       Bolt Beranek and Newman Inc.              Page  38
July 1977 Revision


C.    ASCII/2741 Conversion Table

     If this table is printed on-line, it is meant to be printed on  a
printer  possessing the full ASCII character set.  Except where noted,
on input, any of the  alternate  2741  representations  of  the  ASCII
character  which it is possible to type on the given 2741 may be used.
On  output,  the  single  character  representation  is  chosen   when
possible.   In the "Symbol" column of the table, ↑ is used to indicate
control; e.g., ↑R means control-R.  Not all  ASCII  terminals  have  a
left  arrow  --  some  have an underbar instead.  Likewise, some ASCII
terminals have a caret where others have an uparrow.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  39
July 1977 Revision


                    ASCII     ASCII     2741
Octal     Decimal   Name      Symbol    Representation

  0         0       NUL       ↑@        "P (no output)
  1         1       SOH       ↑A        "a (no output)
  2         2       STX       ↑B        "b (no output)
  3         3       EXT       ↑C        "c (no output)
  4         4       EOT       ↑D        "d (no output)
  5         5       ENQ       ↑E        "e (no output)
  6         6       ACK       ↑F        "f (no output)
  7         7       BEL       ↑G        "g
 10         8       BS        ↑H        "h or BS (output only)
 11         9       HT        ↑I        "i or HT (output only)
 12        10       LF        ↑J        "j or LF (output only)
 13        11       VT        ↑K        "k (no output)
 14        12       FF        ↑L        "l (no output)
 15        13       CR        ↑M        "m or NL (output only)
 16        14       SO        ↑N        "n (no output)
 17        15       SI        ↑O        "o (no output)
 20        16       DLE       ↑P        "p (no output)
 21        17       DC1       ↑Q        "q (no output)
 22        18       DC2       ↑R        "r (no output)
 23        19       DC3       ↑S        "s (no output)
 24        20       DC4       ↑T        "t (no output)
 25        21       NAK       ↑U        "u (no output)
 26        22       SYN       ↑V        "v (no output)
 27        23       ETB       ↑W        "w (no output)
 30        24       CAN       ↑X        "x (no output)
 31        25       EM        ↑Y        "y (no output)
 32        26       SUB       ↑Z        "z (no output)
 33        27       ESC       ↑[        "K or
                                        cent-sign (no output)*
 34        28       FS        ↑\        "L (no output)
 35        29       GS        ↑]        "M (no output)
 36        30       RS        ↑↑        "N (no output)
 37        31       US        ↑←        "O (no output)














-----------
*A cent-sign will print if the 2741 has one, otherwise
there will be no output.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  40
July 1977 Revision


 40        32       SP        space     space
 41        33                 !         ! or plus-minus-sign
 42        34                 "         "" (input) and " (output)
 43        35                 #         # or "=
 44        36                 $         $ or "&
 45        37                 %         % or "?
 46        38                 &         & or "$
 47        39                 '         ' or ",
 50        40                 (         ( or "<
 51        41                 )         ) or ">
 52        42                 *         *
 53        43                 +         + or sideways-group-mark
 54        44                 ,         ,
 55        45                 -         -
 56        46                 .         .
 57        47                 /         /
 60        48                 0         0
 61        49                 1         1 or degree-sign or box
 62        50                 2         2
 63        51                 3         3
 64        52                 4         4
 65        53                 5         5
 66        54                 6         6
 67        55                 7         7
 70        56                 8         8
 71        57                 9         9`
 72        58                 :         :
 73        59                 ;         ;
 74        60                 <         < or "(
 75        61                 =         = or delta-sign
 76        62                 >         > or ")
 77        63                 ?         ?

Report No. 2183       Bolt Beranek and Newman Inc.              Page  41
July 1977 Revision


100        64                 @         @ or "+
101        65                 A         A
102        66                 B         B
103        67                 C         C
104        68                 D         D
105        69                 E         E
106        70                 F         F
107        71                 G         g
110        72                 H         H
111        73                 I         I
112        74                 J         J
113        75                 K         K
114        76                 L         L
115        77                 M         M
116        78                 N         N
117        79                 O         O
120        80                 P         P
121        81                 Q         Q
122        82                 R         R
123        83                 S         S
124        84                 T         T
125        85                 U         U
126        86                 V         V
127        87                 W         W
130        88                 X         X
131        89                 Y         Y
132        90                 Z         Z
133        91                 [         [ or "B
134        92                 \         \ or "/
135        93                 ]         ] or "E
136        94                 ↑         caret or uparrow or "! or
                                        "plus-minus-sign
137        95                 ←         underbar or slash-b

Report No. 2183       Bolt Beranek and Newman Inc.              Page  42
July 1977 Revision


140        96                 `         "*
141        97                 a         a
142        98                 b         b
143        99                 c         c
144       100                 d         d
145       101                 e         e
146       102                 f         f
147       103                 g         g
150       104                 h         h
151       105                 i         i
152       106                 j         j
153       107                 k         k
154       108                 l         l
155       109                 m         m
156       110                 n         n
157       111                 o         o
160       112                 p         p
161       113                 q         q
162       114                 r         r
163       115                 s         s
164       116                 t         t
165       117                 u         u
166       118                 v         v
167       119                 w         w
170       120                 x         x
171       121                 y         y
172       122                 z         z
173       123                 {         "6
174       124                 |         vertical-bar or "V
175       125                 }         "9
176       126       tilde     }         not-sign or "underbar
177       127       DEL       rubout    "D (no output)

Report No. 2183       Bolt Beranek and Newman Inc.              Page  43
July 1977 Revision


7.   TIP MESSAGES TO THE TERMINAL USER


 BAD           The TIP doesn't recognize the command

 Closed        Connection closed, usually by server Host

 Connection Restored
               Destination Host has restored the connection as it
                 was before the Host halted.

 Connection Suspended
               Destination Host has halted operation.

 Host broke the connection
               The Destination Host's service is restored but all
                 network connection tables have been reset.

 Host not responding
               Destination Host not up from the network's point 
                 of view. It is not known when service
                 will resume.

 Host Scheduled Down Until ...
               Destination Host is scheduled down until the
                 date and time indicated.

 Host Unscheduled Down Until ...
               Destination Host is unscheduled down until the
                 date and time indicated.

 ICP Interferred With
               The Host has not performed the ICP correctly
                 and the TIP has refused to open a connection.

 Latest Net news...
 Use "@N<cr>" followed by "netnews<cr>"
               The TIP is conveying to the user the date the
                 latest news item for TIP users was generated.

 Net Trouble   Destination IMP cannot be reached due to some
                 kind of trouble in the network.

 NO            Parameters may not be set for specified terminal.

 Num           The TIP expected a number -- command terminated.

 Open          Connection opened by server Host.

 R             Refers to the Receive side of a connection.

 Refused       The remote Host rejected the attempt to establish
                 connections.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  44
July 1977 Revision


 T             Refers to the Transmit side of a connection.

 TIP GOING DOWN  The TIP is going down in the number of minutes
                 indicated -- quickly stop what you are doing
                 and stop using the TIP.

 TIP NAME      The TIP heard the user dial in and establish rate.
                 The number following NAME is the TIP software
                 system version number. It is followed by the
                 octal port number.

 Trying        The TIP is now servicing the user's OPEN request.

 Wait          The TIP is attempting to contact an RSEXEC Server.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  45
July 1977 Revision


8.    TIP MAGNETIC TAPE OPTION

     As one method of increasing the usefulness of the  Terminal  IMP,
we have developed a magnetic tape transfer capability as a TIP option.
The first such option was delivered to  the  field  during  the  first
quarter  of 1972.  In order to ease the problems of interfacing such a
specialized terminal type, we chose to specify  the  attachment  of  a
standard Honeywell peripheral unit rather than attempting to solve the
problem of tape drive attachment in a more generalized way.  The  unit
chosen is the Honeywell 316-4021 option which consists of a tape drive
controller and one drive unit (the controller  itself  is  capable  of
handling up to seven additional 316-4022 drives).  The characteristics
of the tape drive include:

      - Read/write speed of 26 inches per second
      - Seven-track tapes
      - Even or odd parity (program selectable)
      - Industry compatible 200, 556, or 800 bpi

In  addition  to  the  tape  drive  and  controller,  the  problem  of
programming  for  the  controller  and  the  buffering of tape records
dictated the addition of a separate 4K memory bank  to  TIPs  equipped
with this option.

     The most immediate pressure for the addition of a  magnetic  tape
option to the TIP was the desire to enable a pair of TIP users to copy
tapes over the network from one TIP to another, rather  than  shipping
physical tapes by mail.

     The magnetic tape system communicates with  the  network  through
the  TIP,  although  in  many  cases  it  bypasses the usual TIP code,
substituting its own procedures to allow for the  special  nature  and
relatively  high  data  rate  of  a  magnetic  tape terminal.  In most
respects, however, the tape  unit  appears  as  a  standard  terminal,
arbitrarily  designated  number  77.   On a TIP equipped with magnetic
tape, line 77 cannot be used as an external terminal.

     An additional terminal is required to issue commands to the  tape
and receive status information and error comments.  This may be of any
type  and  may  be  connected  to  any   line.    Its   use   as   the
tape-controlling terminal can be concurrent with its normal usage.

     The specific hardware design of  the  magnetic  tape  units  used
dictates some constraints.  Tape format is 7-track using either odd or
even parity.  In  memory,  tape  frames  are  stored  two  to  a  word
occupying the high order twelve bits of each word.  Frames can only be
written in pairs; reading a record with an odd number of frames causes
the  control  unit  to  append  an  extra  null frame to the record in
memory.

     The maximum record length  is  2400  characters  (frames).   This
limit  is based on the amount of TIP core available for buffering.  If
all  maximum  length  records  are  used,  this  results  in  an   80%

Report No. 2183       Bolt Beranek and Newman Inc.              Page  46
July 1977 Revision


utilization  of  tape  space at 800 bpi (the remainder is inter-record
gaps).

     The commands relating to magnetic tapes are  of  a  less  general
form  than  other  TIP  commands.   Neither  multiple  spaces nor word
completion  are  presently  permitted,  and  numbers   are   used   to
distinguish different commands.  The format is @ M #1 #2, where #1 and
#2  are  the  command  number  and  its  argument  respectively.   The
commands, their numbers and arguments are:

      Rewind                 1  decimal-count
      Forward Space Record   2  decimal-count
      Forward Space File     3  decimal-count
      Backward Space Record  4  decimal-count
      Backward Space File    5  decimal-count
      Read Record            6  decimal-count
      Read File              7  decimal-count
      Write Record           8  decimal-count
      Write File             9  decimal-count
      Transfer Files         10 decimal-count
      Setup TIP-TIP Copy     11 foreign-TIP-number
      Abort and Initialize   12 parity (i.e. even or odd)
      Write File Mark        13 decimal-count
      Set Parity             14 even-or-odd

A file mark is treated by the hardware as a record and  must  thus  be
accounted  for  when  spacing  or reading by the RECORD commands.  The
SETUP COPY command is  used  in  the  establishment  of  a  connection
between TIPs, described below.

     There are some important  things  to  note  about  magnetic  tape
commands.   All  regular  TIP commands given for the tape, e.g., those
specifying Host or socket parameters, must be preceded by  77.   This,
of  course,  captures  the  tape  drive  for  the  terminal giving the
commands.   All  special  tape  commands  (those  beginning  with  M),
implicitly  capture device 77 in the same way.  Thus once any terminal
issues a command for device 77 or any MAG command, it has captured the
magnetic tape; no one else is permitted to control it until the owning
terminal has issued the @77 GIVE BACK command.

     A  network  connection  must  exist  before  information  may  be
transferred.  A typical sequence of TIP commands which might establish
a connection between two magnetic tapes  follows:  at  each  TIP,  the
operator  would  issue  a Setup Copy command to the Host number of the
other TIP.  This command establishes socket numbers for the "standard"
TIP-to-TIP  magnetic  tape  connection.  Status information about this
connection such as Open, Closed, etc.  will be followed by MTR and MTT
rather  than the usual R and T to differentiate magnetic tape activity
from other activity of the controlling terminal.  Then the write  side
would  give  a Transfer Files command which would close MTT and MTR if
necessary, and open MTT.  When MTT opens, a request  is  sent  to  the
other  TIP,  and  MTT is closed.  The request prompts the other TIP to
open MTR (his MTT), rewind his  tape,  read  and  send  the  requested

Report No. 2183       Bolt Beranek and Newman Inc.              Page  47
July 1977 Revision


number  of  files,  rewind  his  tape,  and close the connection.  The
writing TIP also rewinds its tape after writing the last file.

     Errors and abnormal status conditions are detected  and  messages
are  typed  out  on the controlling terminal.  Errors which will be of
significance to the operator include:

      UNREC ERR      Unrecoverable read or write errors
                     after 20 retries -- a bad spot in
                     the tape or tape drive hardware
                     problems.  The results of the
                     20th try are used.

      TIMEOUT        The tape controller remains busy
                     or no network activity occurs for
                     too long.  The command is aborted.

      OFFLINE        The mag tape unit is somehow not
                     operational (power off, no tape
                     mounted, vacuum off, wrong unit
                     number, etc.).  The command
                     is aborted.

      EOT            The tape has moved past the end-of-tape
                     marker.  The command is aborted.

The error messages may be followed by MTR or MTT to denote which  side
of  the  connection originated the message.  At the request of the TIP
sites with magnetic tape option, records read in error  presently  are
reread  many times and then transmitted anyway after printing an error
message.  If aborted by an error condition, the Transfer Files command
will  attempt  to  restart  the  transfer  requesting the other TIP to
rewind its tape, skip over as many files as have already been  written
and send the remaining files.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  48
July 1977 Revision


9.  CONNECTION OF TERMINALS TO THE TIP

A.  General Comments


     The TIP allows the connection of most terminals that  conform  to
the  EIA  RS232  standard.  The TIP is built such that it appears to a
terminal to be a modem and appears to a modem as  a  terminal.   If  a
terminal  has  a  25  pin connector (DB25P, several manufacturers) and
works with a 103 modem or  equivalent,  it  will  probably  work  when
plugged  into an LIU card marked "T".  Appendix D lists terminals that
have been used.

     This section specifies the interface between a terminal  and  the
TIP.   See  Section 9-C for connections involving modems.  It is hoped
that by examining this section, an engineer will be able to  determine
whether  he has met the conditions necessary for proper operation of a
terminal connected to the TIP.

     To  a  large  extent,  the  TIP  follows  EIA  Standard  RS-232C.
Familiarity  with  that document is recommended.  (The pin allocations
specified by that standard are given inside the front cover.)

     In order to connect a terminal to the  TIP  without  modems,  one
must look like a modem to the other.  Input and output connections are
therefore cross-connected at the LIU pads, as shown in Table 9-1.

     Expansions to  this  specification  are  planned  in  the  future
(particularly  as  this  relates to control signals).  It is therefore
very important that this section be kept up-to-date as  revisions  are
provided.

     Connector - The connector from the terminal should be  equivalent
to  a  Cinch  DB-25P.   It  is  recommended  that  extension cords for
terminals provide for all  25  pins  in  order  to  allow  for  future
changes.

     Signal Levels -  All  signals  are  represented  by  bipolar  low
voltage  levels.   All  signals  are  measured  with respect to signal
ground.  The source of a signal shall deliver a voltage  of  magnitude
between  3  and  25 volts into a load of not less than 3000 ohms.  The
reactive component of  the  load  shall  not  be  inductive,  and  the
capacitance  shall  not  exceed  2500  pfd.  measured at the interface
connector.  The signals shall be interpreted in this way:

Report No. 2183       Bolt Beranek and Newman Inc.              Page  49
July 1977 Revision


                        Data Signals

            -25<Vd<-3 is marking or logical one
            +3<Vd<+25 is spacing or logical zero


                 Control and Timing Signals

                -25<Vc<-3 is considered OFF
               +3<Vc<+25 is is considered ON


     Signal Use - The TIP software handles the  signals  as  shown  in
Table 9-1.

     Character Code - The  TIP  software  accepts  ASCII  8-bit  code.
Parity  is  ignored  on  input, and undefined on output.  IBM 2741 and
2741-like devices are specially handled.  See Section 4-A.

     Carriage Return Speed - Carriage return  speed  is  known  to  be
reasonably  compensated for Teletypes 33, 35, and 37; and, separately,
for Execuport-like devices.   A  line  printer  (ODEC)  with  a  small
(256-character)   buffer   is   also   reasonably  compensated.   This
compensation is set by the TIP program.

     Terminals Which Provide Their Own Clock - Terminals which provide
their  own  clocks  for  transferring data can be connected to the TIP
provided they meet the previous specifications.  The clocks should  be
routed  to  LIU pads E15 and E17.  The data lines should change on the
positive edges of the clocks, and should be sampled  on  the  negative
edges.   (This  is not to be interpreted as an indication that the TIP
works with synchronus modems or devices.   Characters  must  still  be
formatted  with  stop-start  bits  since  the actual operating mode is
basically character-asychronus.)


B.  Direct Terminal Connection

     Table 9-1 lists how the  TIP  uses  RS232  signals  for  terminal
connections.         

Report No. 2183       Bolt Beranek and Newman Inc.              Page  50
July 1977 Revision


        TABLE 9-1 TIP SIGNAL ALLOCATION FOR TERMINALS*


EIA     LIU     DESIGNATION
PIN     PAD     (FROM THE POINT OF VIEW OF THE TERMINAL)

 1      E1      PROTECTIVE GROUND (AA) - Used.
 2      E3      TRANSMITTED DATA (BA) - Used for data going from
                the terminal to the TIP.
 3      E2      RECEIVED DATA (BB) - Used for data going from the
                TIP to the terminal.
 7      E7      SIGNAL GROUND (AB) - Used.
 8      E20     RECEIVED LINE SIGNAL DETECTOR (CF) - Modem control
                bit 3.  Held ON by the TIP, except for a short
                (approximately 1/2 sec.) period following an ON
                to OFF transition of DATA TERMINAL READY, during
                which it goes off.
20      E8      DATA TERMINAL READY (CD) - Modem status bit 2.
                THIS SIGNAL IS USED BY THE TIP to determine that
                the terminal is connected to the TIP.  If "hunt"
                mode is enabled for this device, an ON to OFF
                transition of this signal initiates "hunt" mode.

        The following control signals are held on by the TIP
        software:

 5      E4      CLEAR TO SEND (CB) - Modem control bit 0.  Held
                ON by the TIP.
 6      E19     DATA SET READY (CC) - Modem control bit 2.  Held
                ON by the TIP.
16      E14     SECONDARY RECEIVED DATA (SBB) - Modem control bit
                1. Held ON by the TIP.

        The following status signals are ignored by the TIP
        software:

 4      E5      REQUEST TO SEND (CA) - Modem status bit 0.
                Ignored by the TIP.
12      E12     SECONDARY RECEIVED LINE SIGNAL DETECTOR (SCF) -
                Modem status bit 3.  Ignored by the TIP.
13      E13     SECONDARY CLEAR TO SEND (SCB) - Modem status bit
                4. Ignored by the TIP.
14      E16     SECONDARY TRANSMITTED DATA (SBA) - Modem status
                bit 5.  Ignored by the TIP.
19      E6      SECONDARY REQUEST TO SEND (SCA) - Modem status bit
                1. Ignored by the TIP.

*This configuration makes the LIU look approximately like a 103
modem to the terminal.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  51
July 1977 Revision


C.  Modems


     It is desired that the TIP be able to operate with terminals over
private or leased lines, or over the switched telephone network.  This
requires the use of a pair of modems between the terminal and the TIP.
The TIP basically supports the Bell 103 class of modems.  An extension
is the Vadic 3400 which is 1200 baud full duplex with 103 protocol.  A
202  equivalent  modem is being used in Simplex mode to drive a remote
line printer.

     It may be that a group desiring to  use  another  type  of  modem
could  coax  that  modem  to  work  within  the available software and
hardware structure.  For  that  purpose,  this  section  will  try  to
describe  the  difficulties  in  using  half-duplex modems, the use of
synchronous  modems,  and  the  manner  in  which  the  103  modem  is
supported.


        Half-Duplex Modems


     Half-duplex modems are modems in which data on the  primary  data
channel  can  flow  in only one direction at a time.  Data cannot flow
both ways at the same time.  There may or may not be a "secondary"  or
"supervisory"  channel  which  points  in  the  direction opposite the
primary  channel.   The  essential  problem  involved  in  half-duplex
operation  is  control  of  the  direction of data flow on the primary
channel.  Significant questions are:

        - What protocol should be adopted for turning the line
          around -- special control characters, or use of a
          secondary channel?
        - Which end (if either) is in control of the channel?
        - If the terminal is receiving a large listing, how
          can the user terminate the output when the channel
          is pointing the wrong way?
        - Who should do the echoing and when?

     These   problems   are   clearly   a   matter   of    convention.
Unfortunately, EIA Standard RS-232, which many modems follow, does not
define a convention which would answer these questions.   It  is  very
helpful  if  a  request  to  BBN  for  a  modem  on the TIP includes a
statement of what terminals are to be connected to the other end,  and
what convention they follow.


        Synchronous Modems


     The TIP should be able to use synchronous  modems  provided  that
the  characters  are  framed  by  start  and  stop  bits, and that the
synchronous modem is similar enough to a modem which is  supported  by

Report No. 2183       Bolt Beranek and Newman Inc.              Page  52
July 1977 Revision


the  software.   The  device  rate  must be set to external clock mode
through the use of a TIP command such as:

                  @ DEVICE RATE 1023

        103 Modems

Description:


     The Bell Telephone 103 modem is a low-speed  (up  to  300  baud),
asynchronous, full-duplex modem for use on private leased lines or the
switched telephone network.

Connection:


     See Table 9-2 for the pin connection on the LIU card, and  for  a
description of the TIP's use of the signals.

Operation:


     In use, the  modem  at  the  TIP  end  is  usually  left  in  the
AUTO-ANSWER  mode.   When  a  user  wishes to connect his terminal, he
dials the number of the modem at the TIP.  After the ring is  answered
and  a data carrier is heard, the user depresses the DATA button.  The
user is then connected as if his terminal were connected  directly  to
the  TIP.   He  types  the  characteristic character for his terminal,
receives the header message,  and  proceeds  to  use  the  network  as
desired.

Simplex Modem Connections



     A simplex modem connection is defined as a modem connected to  an
LIU  card with data flowing in one direction only.  Its primary use is
to connect a line printer at a remote site to  a  TIP.   A  1200  baud
asynchronous modem (with supervisory reverse channel) is usually used.
Any modem will probably work including half duplex types.   Since  the
half  duplex  protocol  is  to  have  the called modem transmit first,
simplex should work quite well.

     The LIU will hold EIA  pins  3  and  11  at  ground.   There  are
normally  not  enough pads on the pin 3 patch panel, so a minor change
to the LIU card and a jumper must be prepared.  If this connection  is
desired, call the NCC for further information and assistance.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  53
July 1977 Revision


                        TABLE 9-2
                TIP SIGNAL ALLOCATION FOR 103 MODEM

EIA     LIU
PIN     PAD

 1      E1      PROTECTIVE GROUND (AA) - Used.
 2      E2      TRANSMITTED DATA (BA) - Used for data going from
                the TIP to the MODEM.
 3      E3      RECEIVED DATA (BB) - Used for data going from the
                MODEM to the TIP.
 5      E5      CLEAR TO SEND (CB) - Modem status bit 0.  Ignored
                by the TIP.
 6      E6      DATA SET READY (CC) - Modem status bit 1.  Used
                in conjunction with CF to determine whether a
                legitimate data call has been made or whether the
                connection should be terminated.
 7      E7      SIGNAL GROUND (AB) - Used.
 8      E8      RECEIVED LINE SIGNAL DETECTOR (CF) = modem status
                bit 2.  This signal is used by the TIP to
                determine that a connection has been made.  If
                "hunt" mode is enabled for this device, an ON
                to OFF transition initiates "hunt" mode.
20      E20     DATA TERMINAL READY (CD) - Modem control bit 3.
                Held ON by the TIP, except for a short
                (approximately 1/2 sec.) period after TIP
                software decides whether a legitimate data call
                has been made or whether the connection should be
                terminated.

        All other signals are connected as shown in Appendix A
        but are not used by the 103 modem.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  54
July 1977 Revision


                         Table 9-3

               LIU Patch Panel Configurations

     EIA        103       STD         MDL37  SIMPLEX   202
     PIN        MODEM     TERMINAL    TTY    MODEM*    MODEM
     1          1         1           1      1         1
     2          2         3           3      2         2
     3          3         2           2      OPEN      3
     4          4         5           5      4         4
     5          5         4           4      5         5
     6          6         19          8      6         6
     7          7         7           7      7,3       7
     8          8         20          20     12        8
     9          -         -           -      -         -
     10         -         -           -      -         -
     11         11        11          11     7         14
     12         12        12          12     8         16
     13         13        13          13     13        13
     14         14        16          16     14        12
     15         15        17          17     15        15
     16         16        14          14     16        11
     17         17        15          15     17        17
     18         -         -           -      -         -
     19         19        6           6      19        19
     20         20        8           8      20        20
     21         -         -           -      -         -
     22         -
     23         -         -           -      -         -
     24         24        25          25     24        24
     25         25        24          24     25        25


     Labels     (M,103,   (T)         (37)   (SM)      (202)
                or None)


     *A jumper and a minor change to the LIU card is
     needed for this configuration.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  55
July 1977 Revision


APPENDIX A:  HOST ADDRESSES 

     The following is a table of Hosts on the Network at the time this
update  was  published.  The columns (from left to right) are: Decimal
Host address, Host/IMP address, Host name, Interface computer, if any,
computer type, and type of operating system.


Address     Hostname        Interface->Computer        (System)
-------------------------------------------------------------------
  1   0/1   UCLA-ATS        PDP-11/45 (ANTS, ELF, UNIX, or UCLA-VMN)
 65   1/1   UCLA-CCN        IBM 360/91 (OS/MVT and TSO)
129   2/1   UCLA-SECURITY   PDP-11/45 (UNIX)

  2   0/2   ARC-RD          PDP-11/40 (ELF)
 66   1/2   SRI-KL          DEC-1090T (TOPS-20)
130   2/2   SRI-VIS11       PDP-11/10
194   3/2   SRI-NSC11       PDP-11/40 (ELF) -> SPS-41 (D0S)

  3   0/3   NOSC-CC         PDP-11/40 (ELF) -> UNIVAC 1110
 67   1/3   NOSC-SECURE1    PLI -> H-716 -> UNIVAC 1108
131   2/3   NOSC-SDL        PDP-11/40 (ELF, UNIX)
195   3/3   NWC             PDP-11/40 -> UNIVAC 1110

  4   0/4   UTAH-11         PDP-11/45 (RSX11M) 
132   2/4   UTAH-TIP

  5   0/5   BBN-TENEXE      PDP-10 (TENEX)
 69   1/5   BBN-INLAT       PDP-11/40 (Custom built)
133   2/5   BBN-PTIP        PLURIBUS
197   3/5   BBN-TENEXA      DEC-2050T (TOPS-20AN)

  6   0/6   MIT-MULTICS     H-6180 (MULTICS)
 70   1/6   MIT-DMS         PDP-10 (ITS)
134   2/6   MIT-AI          PDP-10 (ITS) -> PDP-11
                                      -> PDP-6
198   3/6   MIT-ML          PDP-10 (ITS)

  7   0/7   RAND-RCC        IBM 370/158 (OS/MVT 21.7, HASP, WYLBUR)
135   2/7   RAND-TIP
199   3/7   RAND-UNIX       PDP-11/70 (UNIX)

  8   0/8   NRL             PDP-11/40 -> TI-ASC
 72   1/8   NSRDC           PDP-11/40 -> CDC 6400
136   2/8   NSWC-DL         PDP-11/40 -> CDC 6700
200   3/8   NADC            PDP-11/40 -> CDC 6500
264   4/8   NSWC-WO         PDP-11/40 -> CDC 6500

  9   0/9   HARV-10         PDP-10 (TOPS-10)

 10   0/10  LL              IBM 370/168 (VM/370)
202   3/10  LL-11           PDP-11/45 (UNIX) -> SPS-41 (DOS)

Report No. 2183       Bolt Beranek and Newman Inc.              Page  56
July 1977 Revision


 11   0/11  SU-AI           DEC-20/40 (TOPS-10) -> PDP-10 (TOPS-10)
                                       -> PDP-11/45 -> SPS-41 (DOS)
                                       -> PDP-6

 12   0/12  ILL-CAC         PDP-11/50 (UNIX)
 76   1/12  ILL-NTS         PDP-11/20 (ANTS) or PDP-11/50 (UNIX)

 13   0/13  GUNTER-ELF      PDP-11/35 (ELF) -> B-4700 (MCPV)
141   2/13  GUNTER-TIP

 14   0/14  CMU-10B         PDP-11 -> PDP-10 (TOPS-10)
 78   1/14  CMU-10A         PDP-11 -> PDP-10 (TOPS-10)
142   2/14  CMU-10C         DEC-1090T (TOPS-20AN) -> PDP-11 (UNIX)
206   3/14  CMU-CMMP        4 PDP-11/20s + 12 PDP-11/40s (HYDRA)
                            Multiprocessor

 15   0/15  I4-TENEX        PDP-10 (TENEX) -> ILLIAC-IV (ACL)
                                       -> B-6700 -> ILLIAC-IV (ACL)
                                       -> PDP-11s-> ILLIAC-IV (ACL)
 79   1/15  I4-ELF          PDP-11 (ELF) -> ILLIAC-IV (ACL)
143   2/15  I4B-TENEX       PDP-10 (TENEX) -> ILLIAC-IV (ACL)

 16   0/16  AMES-67         IBM-360/67 (TSS/360)
144   2/16  AMES-TIP
208   3/16  AMES-11         PDP-11/45 (ELF) -> PDP-11/10

145   2/17  MITRE-TIP

 18   0/18  RADC-MULTICS    H-6180 (MULTICS)
 82   1/18  ROCHESTER       DCU-50 -> ECLIPSE 450B
146   2/18  RADC-TIP
210   3/18  RADC-XPER       PDP-11/40 (RSX11M, ELF, UNIX)

 19   0/19  NBS-10          PDP-10 (TOPS-10)
147   2/19  NBS-TIP
211   3/19  NBS-UNIX        PDP-11/45 (UNIX) -> Internal Network

 20   0/20  CCTC            PDP-11/70 (UNIX) -> H-6000 (GCOS)
148   2/20  DCA-TIP
212   3/20  DCEC            PDP-11/40 (RSX11M, RSX11D)

 21   0/21  LLL-COMP        PDP-11/70 (RATS, UNIX)
 85   1/21  LLL-MFE         PDP-10 up Fall 77

 22   0/22  ISI-SPEECH11    PDP-11/45 (EPOS, DOS) -> FPS AP-120B
 86   1/22  USC-ISI         PDP-10 (TENEX)
150   2/22  USC-ISIC        PDP-10 (TENEX)

151   2/23  USC-TIP
215   3/23  USC-ECL         PDP-10 (TENEX)

152   2/24  GWC-TIP

Report No. 2183       Bolt Beranek and Newman Inc.              Page  57
July 1977 Revision


 89   1/25  OT-ITS          PDP-11/40 (ELF)
153   2/25  DOCB-TIP

154   2/26  PENTAGON-TIP
218   3/26  PENT-UNIX       PDP-11 (UNIX)

 27   0/27  BELVOIR         PDP-11/40 (ANTS)

 28   0/28  ARPA-DMS        PDP-15 (DMS)
 92   1/28  ARPA            PDP-11/70 (UNIX) up Fall 77
156   2/28  ARPA-TIP
220   3/28  ARPA-XGP11      PDP-11/40 (ELF) -> Xerox Graphics Printer

 29   0/29  BRL             PDP-11/40 (ANTS, ELF)

158   2/30  BBN-TESTIP

 31   0/31  CCA-TENEX       PDP-10 (TENEX) -> DATACOMPUTER
 95   1/31  CCA-SPEECH      PDP-11/40
223   3/31  CCA-SIP         PDP-11/40 (SIP Custom)

 32   0/32  PARC-MAXC       MAXC (TENEX)
 96   1/32  PARC-GATEWAY    NOVA-800->Internal Net->PARC-MAXC2 (TENEX)

 33   0/33  FNWC            CDC-3200 -> CDC-6500 (SCOPE)

 34   0/34  LBL             CDC-6600 (SESAME) -> CDC-7600 (BKY)

 35   0/35  NOSC-SECURE2    PLI -> PDP-10 (TENEX)
 99   1/35  LOGICON         PDP-11/45 (UNIX)
163   2/35  ACCAT-TIP
227   3/35  NOSC-SECURE3    PLI -> PDP-11/70 (UNIX)

164   2/36  CINCPAC-TIP

101   1/37  DEC-MARLBORO    DEC-1090T (TOPS-20AN)

 39   0/39  SDAC-CCP        PLURIBUS
103   1/39  SDAC-DP         IBM 360/40 (DOS/360)
167   2/39  SDAC-NEP        IBM 360/40 (DOS/360)
231   3/39  SDAC-44         IBM 360/44 (DOS)

 40   0/40  BBN-NCC         H-316
168   2/40  NCC-TIP
232   3/40  BBN-GATEWAY     PDP-11

 41   0/41  NORSAR-40A      IBM 360/40 (DOS 15)
105   1/41  NDRE            NORD-10 (SINTRAN-3) up 7/77
169   2/41  NORSAR-TIP
233   3/41  NORSAR-11       PDP-11

Report No. 2183       Bolt Beranek and Newman Inc.              Page  58
July 1977 Revision


 42   0/42  LONDON          PDP-9 -> IBM 360/195 Dual Processor
                                  (OS and ELECTRIC)
                               -> CDC 6400/6600->7600(SCOPE)
                               -> GEC 4080 (GECOS)
                               -> ICL System 4-72
106   1/42  LONDON-VDH      PDP-9
170   2/42  LONDON-TIP
234   3/42  LONDON-SATNET-
            GATEWAY         PDP-11

171   2/43  TYMSHARE-TIP

 44   0/44  MIT-DEVMULTICS  H-68/80 (MULTICS)
108   1/44  LL-ASG          PDP-11/50 (UNIX)
172   2/44  MIT-TIP
236   3/44  MIT-MC          DEC-10/80 (ITS)

 45   0/45  MOFFETT-ARC     PDP-10 (TENEX)
109   1/45  MOFFETT-SUBNET  PL1 -> PDP-10 (TENEX)

 46   0/46  RUTGERS-10      PDP-10 (TOPS-10)
110   1/46  UPENN
174   2/46  RUTGERS-TIP
238   3/46  NUSC            PDP-11/40 (ELF) -> UNIVAC 1108

 47   0/47  WPAFB           PDP-11/50 (RSX11M) -> CDC-6600 (SCOPE)
111   1/47  WPAFB-AFAL      VDA -> PDP-10 (TOPS-10) -> PDP-10
175   2/47  WPAFB-TIP

 48   0/48  AFWL            PDP-11/50 (RSX11M) -> CDC-6600 (SCOPE)
112   1/48  ASL             PDP-11/10 (ELF)
176   2/48  AFWL-TIP

 49   0/49  BBN-TENEXB      PDP-10 (TENEX)
113   1/49  BBN-TENEXD      DEC-1090T (TOPS-20AN)
177   2/49  BBN-SPEECH-11   PDP-11/40 (RT11) -> SPS-41 (EPOS)
241   3/49  BBN-TENEX       PDP-10 (TENEX)

 51   0/51  SRI-KA          PDP-10(TENEX)
115   1/51  SRI-IA11        PDP-11/40 (RSX11M)
243   3/51  SRI-PKT11       PDP-11/40 (ELF,RT11,DOS)->Packet Radio Net

 52   0/52  ISI-XGP11       PDP-11/40 (ELF) -> Xerox Graphics Printer
116   1/52  USC-ISIE        DEC-1090T (TOPS-20AN)
244   3/52  USC-ISIB        PDP-10 (TENEX)

 53   0/53  EGLIN           PDP-11/45 (RSX11M) -> CDC-6600 (SCOPE)
117   1/53  NCSL            PDP-11/40 (ELF) -> B-5500

 54   0/54  SCRL-DEV        PDP-11 (RSX11)
118   1/54  SCRL-RSX        PDP-11/45 (RSX11)
182   2/54  CHII            MP-32/MP-32A ->  AP-90 (SIGNAL)

Report No. 2183       Bolt Beranek and Newman Inc.              Page  59
July 1977 Revision


 55   0/55  ANL             VARIAN-73->IBM 370/195
                                (OS/MVT 21.7,ASP 3.1)

 56   0/56  SUMEX-AIM       PDP-10 (TENEX) Dual Processor -> PDP-10

 57   0/57  NSA             PDP-11/40 (ELF)

 58   0/58  NYU             PDP-11/40 (ELF) -> CDC-6600 (KRONOS)
122   1/58  BNL             PDP-11/34 -> 2 CDC-6600s -> CDC-7600
                             (ELF)->(SCOPE 3.4)->(SCOPE 2.1, INTERCOM)

 59   0/59  ETAC            PDP-11/45 (ELF)

 62   0/62  UTEXAS          PDP-10 (TENEX)

Report No. 2183       Bolt Beranek and Newman Inc.              Page  60
July 1977 Revision


APPENDIX B:  COMMAND SUMMARY*


                                                          Section
BINARY INPUT END
     Leave 8-bit binary input mode                            5-C

BINARY INPUT START
     Enter 8-bit binary input mode                            5-C

BINARY OUTPUT END
     Leave 8-bit binary output mode                           5-C

BINARY OUTPUT START
     Enter 8-bit binary output mode                           5-C

CLEAR DEVICE WILD
     Set device to be unwild                                  5-G

CLEAR INSERT LINEFEED
     Stop inserting linefeed after carriage-return            4-B

CLOSE
     Close all outstanding connections, or abort current Host
     login                                                    4-D

DEVICE CODE 37
     Establish parity computation for Model 37 Teletype       5-A

DEVICE CODE ASCII
     Establish code conversion for an ASCII terminal          5-A

DEVICE CODE EXTRA-PADDING
     Establish code conversion for a terminal with slow CR    5-A

DEVICE CODE OTHER-PADDING
     Establish code conversion for a line printer             5-A

DEVICE RATE #
     # is a 10-bit code specifying hardware rate and          5-A
     character size settings

# DIVERT OUTPUT
     Capture device # and divert this terminal's output       5-E
     to it. # is an octal number.

ECHO ALL
     Local TIP-generated echo -- TIP echoes everything        4-B


---------------
*  # denotes a decimal number unless otherwise stated

Report No. 2183       Bolt Beranek and Newman Inc.              Page  61
July 1977 Revision


ECHO HALFDUPLEX
     Terminal-generated echo -- TIP echoes nothing            4-B

ECHO LOCAL
     Send the Telnet "ECHO LOCAL" character and               4-B
     perform internal E A

ECHO NONE
     Remote Host-generated echo for data --                   4-B
     TIP echoes commands

ECHO REMOTE
     Send the Telnet "ECHO REMOTE" character and              4-B
     perform internal E N

FLUSH
     Delete all characters in input buffer                    5-F

# GIVE BACK
     Release control of captured device #.                    5-D
     # is an octal number.

HOST #
     Simultaneous "@S T H" and "@R F H"                       5-B

INITIAL CONNECTION PROTOCOL
     Start the initial connection protocol                    5-H

INSERT LINEFEED
     Insert linefeed after carriage-returns                   4-D

INTERCEPT #
     Use # as TIP command character                           4-D

INTERCEPT ESC                                                 4-D
     Leave 7-bit binary mode                                  5-C

INTERCEPT NONE                                                4-D
     Enter 7-bit binary mode                                  5-C

LOGIN #
     An obsolete form of OPEN

M # #
     Mag tape command # with argument #                       8

NETWORK-VIRTUAL-TIP-EXECUTIVE                                 4-F
     Connects the user to the Network-Virtual-
     TIP-Executive.
OPEN #
     Open a bi-directional connection to the Host
     decimal address is specified                             4-C

Report No. 2183       Bolt Beranek and Newman Inc.              Page  62
July 1977 Revision


PROTOCOL BOTH
     Simultaneous "@P T T" and "@P T R"                       5-B


PROTOCOL TO RECEIVE
     Manually initiate connection protocol                    5-B

PROTOCOL TO TRANSMIT
     Manually initiate connection protocol                    5-B

RECEIVE FROM HOST #
     Establish Host # parameter for manual                    5-B
     initialization

RECEIVE FROM SOCKET #
     Establish socket # parameter for manual                  5-B
     initialization of connection -- socket # is
     given in octal

RECEIVE FROM WILD
     Equivalent to "@R F S <any>"                             5-G

RESET
     Reset current TIP port parameters                        5-J

Reset NCP
     Resets NCP                                               5-H

SEND BREAK
     Send the Telnet "BREAK" character                        4-D

SEND COMMAND
     Send the command escape character                        5-I

SEND SYNC
     Send the Telnet "SYNC" character and                     4-D
     an "INTERRUPT SENDER" message

SEND TO HOST #
     Establish Host # parameter for manual                    5-B
     initialization of connection

SEND TO SOCKET #
     Establish socket # parameter for manual                  5-B
     initialization of connection -- socket # is
     given in octal
SEND TO WILD
     Equivalent to "@S T S <any>"                             5-G

SET DEVICE WILD
     Equilvalent to the commands "@R F H <any>",              5-G
     "@S T H <any>",  "@S T S <any>",  and "@R F S <any>".

Report No. 2183       Bolt Beranek and Newman Inc.              Page  63
July 1977 Revision


TRANSMIT EVERY #
     Send off input buffer at least every #th                 4-B
     character where 0<#<256

TRANSMIT NOW
     Send off input buffer now                                4-B

TRANSMIT ON LINEFEED
     Send input buffer every time a linefeed is               4-B
     encountered

TRANSMIT ON MESSAGE-END
     Send input buffer every time an end-of-message           4-B
     is encountered

Report No. 2183       Bolt Beranek and Newman Inc.              Page  64
July 1977 Revision


APPENDIX C:  BIBLIOGRAPHY


     Most of the following should be available through your Network
Information Center Technical Liaison or the

               ARPA Network Information Center
               Augmentation Research Center
               Stanford Research Institute
               333 Ravenswood Avenue
               Menlo Park, California  94025

Specifications for the Interconnection of a Host and an IMP, BBN
Report No. 1822 (IMP-HOST section of NIC 7104).

The Interface Message Processor for the ARPA Computer Network, Heart
et al, Proceedings AFIPS 1970 Spring Joint Computer Conference (NIC
4655).

The Network Working Group "Request for Comments" Series: A Set of
Working Papers on Host Protocol.

The Network Resource Notebook, NIC 6740.

The BBN Terminal Interface Message Processor (Hardware Manual), BBN
Report No.  2184.

ARPA Network Current Network Protocols, NIC 7104.

The Terminal IMP for the ARPA Computer Network, Ornstein et al,
Proceedings AFIPS 1972 Spring Joint Computer Conference.

Terminal Access to the ARPA Network: Experience and Inprovements,
Mimno et al, COMPCON 73, Proceedings Seventh Annual IEEE Computer
Society International Conference, San Francisco, February 27 - March
1, 1973.

TIP Users Group Notes, a series of informal notes designed to increase
communication among the developers of the TIP, TIP users, and Hosts
frequently used from TIPs.  To be put on the distribution list for
these notes, apply to the NIC Technical Liaison.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  65
July 1977 Revision


APPENDIX D:  TERMINALS USED WITH THE TIP


     The following terminals are reputed to have worked with the TIP.
See the Introduction (Section 1).

      A. B. DICK VIDEOJET 9600 LINE PRINTER (2400 bps)
      ANDERSON-JACOBSON (models 630 and 841)
      ARDS
      KSR-35 Teletype
      CALCOMP 565
      CDI 1030/ "MULTICS" Terminal
      DATA 100 (model 73)
      DATAPOINT (models 2200, 3000, and 3300)
      DELTA TELTERM 2
      DIGITAL EQUIPMENT CORP. (models VT05 and GT40A)
      EDT 1200
      HAZELTINE 2000
      LINEOLEX (model A)
      MEMOREX 1240
      SUGARMAN (model S-4300)
      TECTRAN CASSETTE
      TEKTRONICS (models 4010 and 4013)
      TELETERM (model 1030)
      TELETYPE (MODEL 38)
      TERMINET 300
      TI Silent 700
      TYCOM
      TRENDATA (model 1000)
      UNIVAC DCT 500
      VIDEO SYSTEMS (models 1200 and 5000)

     We would be pleased to hear of any other terminals that have
operated on a TIP.

     At the International Conference on Computer Communications held
in Washington, D.C., in October 1972, we had the opportunity to
personally test a number of the above terminals with the TIP.  As a
result of this experience we now hold opinions as to the methods and
difficulty of connecting a number of these terminals to the TIP.  We
suggest you call the Network Control Center to be put in touch with
someone about this subject.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  66
July 1977 Revision


APPENDIX E:  NEW TELNET PROTOCOL IMPLEMENTATION


     The NEW TELNET protocol  has  been  implemented  in  TIP  systems
numbered  greater  than 350.  Wherever possible, the TIP should appear
just the same to the  user,  but  some  differences  do  occur.   Some
background information is perhaps useful.  Both protocols are based on
the concept of the NETWORK VIRTUAL TERMINAL, as described  in  Section
2;  each also defines TELNET commands that may be sent to instruct the
other side, for instance, concerning echo mode.  In  the  OLD  TELNET,
such  commands  are unequivocal demands, and cannot be refused even if
the state is undesirable.  A Host can of course undo the state with  a
counter  command  of  its  own,  but it first must understand what has
happened; in addition, there is no guarantee that  the  same  sequence
won't  occur again.  The NEW TELNET protocol defines a minimal default
set of parameters, then allows each side to negotiate for non-standard
options.  No Host is required to accept an undesirable state; in fact,
a Host can simply refuse to do "whatever the other side requested" and
need  not  even  understand  what  it has just refused.  This protocol
should allow sophisticated Hosts to  define  complex  options  without
burdening simpler Hosts.

     A direct implication to the TIP user is that a "command" is now a
"request"  and  may  be refused.  It is possible, for instance, to ask
for remote echoing (local echo is the default) and  not  get  it.   In
practice,  systems  provide the same, or increased, capabilities under
the new protocol.

     On the positive side, the TIP now acts as  an  advocate  for  the
remote  terminal  user.  In the case of a halfduplex terminal like the
2741, the TIP can refuse to accept the remote echo option and the user
no longer needs to cope with double echoing when the connection opens.

     The  NEW  TELNET  protocol  specifically  affects  the  following
aspects of the TIP.



A.  Getting In and Out of NEW TELNET Mode

     The commands @OLD TELNET and @NEW TELNET set the  TIP  to  expect
OLD or NEW TELNET respectively.  The default as of this writing is OLD
TELNET, and @RESET automatically returns the device to OLD TELNET  for
all  devices.   This action also occurs when a non-permanent, that is,
hunting terminal, hunts to its correct rate.

     The TIP saves this mode state for each device.  When a command is
given,  for  say echo or binary, the TIP determines which protocol the
device is using and responds appropriately.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  67
July 1977 Revision


B.  Echoing

     The TIP echo commands have the same meaning in NEW TELNET  as  in
OLD  TELNET, as revised above.  In addition, the TIP now remembers the
mode that the user desires, even though it may not be possible  to  be
in  that state at the time.  If the command is given when a connection
is open, the effect is the same as OLD TELNET, with  the  TIP  sending
the  request  to  the  remote Host.  If, however, the command is given
while the connection is closed, the TIP will save the  user's  request
and  send  it to the remote Host automatically, each time a connection
opens.

     Non-hunting terminals will  continue  to  be  pre-initialized  as
arranged by the designated site representative and the Network Control
Center.  Most hunting terminals will  default  to  remote  echo  mode;
however,  physical halfduplex terminals (2741s) will not accept remote
echoing ever, whether hunting or not.


 C.   Binary Input and Output Options


     Binary input and/or binary output are  available  under  the  NEW
TELNET protocol.  The commands are:

        @ BINARY INPUT START      begins binary input mode
        @ BINARY INPUT END        ends binary input mode
        @ BINARY OUTPUT START     begins binary output mode
        @ BINARY OUTPUT END       ends binary output mode


     As with the echo option, the TIP sets an internal  flag  for  the
mode  the  user  wishes, and attempts to get the remote Host to agree.
This feature is not yet automatic: the TIP will  not  send  a  request
unless  the connection is open at the time of the command, but the TIP
will passively accept a request for binary mode  from  a  remote  Host
until  the  user  ends binary mode.  This may be useful for paper tape
punches, for example.

D.    Log or Open a Connection

     The @ OPEN and @ LOG commands will  automatically  determine  the
appropiate  socket  for the ICP and the TIP will interpret the correct
TELNET protocol.



     NOTE: when connections are made directly (and not through the LOG
or  OPEN  commands),  the  user  should  take care to be in the proper
TELNET mode.  An example might be a lineprinter or  paper  tape  punch
set  wild.   Any  program connecting to such devices must use the same
TELNET protocol that the device is set to.

Report No. 2183       Bolt Beranek and Newman Inc.              Page  68
July 1977 Revision


APPENDIX F:  COMMANDS AVAILABLE UNDER NEW TELNET


     These commands send the following "New  Telnet"  function  codes:
Abort  Output  (AO),  Are You There (AYT), and Interrupt Process (IP).
To use these commands type:

                    @ SEND ABORT OUTPUT

                    @ SEND ARE YOU THERE

                  @ SEND INTERRUPT PROCESS


     The following commands cause the TIP to  send  the  "New  Telnet"
function  codes for Erase Character and Erase Line to the remote Host;
if no connection is open when the commands are  given,  they  have  no
effect.

                   @ SEND ERASE CHARACTER

                     @ SEND ERASE LINE


     The command:

                  @ ECHO REMOTE CONTROLLED


requests the  TIP  to  negotiate  with  the  remote  Host  for  Remote
Controlled  Transmission  and  Echoing  mode (RCTE) for that port.  In
this mode, the TIP does most of the echoing,  but  under  instructions
from  the  Host.   As  examples,  the  Host  could instruct the TIP to
suppress echoing of a password  or  have  the  TIP  hold  off  echoing
temporarily  while  the Host performs command completion (available on
some Host systems).  Like the other New Telnet  echo  modes,  the  TIP
will  remember that RCTE was requested and automatically negotiate for
the option when a new connection opens.  To leave  RCTE  mode,  simply
give   the  TIP  one  of  the  other  echo  mode  commands.   Physical
half-duplex terminals by their nature cannot use RCTE mode.  NOTE: few
Hosts  implement RCTE mode at present and neither they nor the TIP are
guaranteed  to  work  perfectly  as  yet.   Reporting  any   problems,
questions,  or  comments  to  the  NCC (via GRIPE) would be especially
helpful.